package com.gupao.rpc.protocol.constants;

/**
 * 请求类型
 *
 * @author SuperWein
 */
public enum ReqType {
    /**
     * 请求
     */
    REQUEST((byte) 1),
    /**
     * 响应
     */
    RESPONSE((byte) 2),
    /**
     * 心跳检查
     */
    HEARTBEAT((byte) 0);

    /**
     * 请求类型
     */
    private final byte reqType;

    ReqType(byte reqType) {
        this.reqType = reqType;
    }

    public byte value() {
        return this.reqType;
    }

    public static ReqType getReqType(byte reqType) {
        for (ReqType value : ReqType.values()) {
            if (reqType == value.reqType) {
                return value;
            }
        }
        return ReqType.REQUEST;
    }

}
